# Workaround for UAC silliness: programs with "update" in their name
# are believed to be installers and require elevated privileges to be
-# used... Use a manifest file to tell Windows that
+# used... Embed a manifest file into executable to tell Windows that
# gtk-update-icon-cache.exe doesn't require any special privileges.
GTK_UPDATE_ICON_CACHE_MANIFEST = gtk-update-icon-cache.exe.manifest
-
-bin_SCRIPTS = $(GTK_UPDATE_ICON_CACHE_MANIFEST)
+GTK_UPDATE_ICON_CACHE_RC = gtk-update-icon-cache.rc
+GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT = gtk-update-icon-cache_manifest.o
$(GTK_UPDATE_ICON_CACHE_MANIFEST):
(echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' ; \
echo ' </trustInfo>' ; \
echo '</assembly>' ) >$@
+$(GTK_UPDATE_ICON_CACHE_RC):
+ (echo 'CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST '$(GTK_UPDATE_ICON_CACHE_MANIFEST)) >$@
+
+$(GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT): $(GTK_UPDATE_ICON_CACHE_RC) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
+ $(WINDRES) --input $< --output $@ --output-format=coff
+
endif
endif
gtk_query_immodules_3_0_SOURCES = queryimmodules.c
if BUILD_ICON_CACHE
-gtk_update_icon_cache_LDADD = $(GDK_PIXBUF_LIBS)
+gtk_update_icon_cache_LDADD = $(GDK_PIXBUF_LIBS) $(GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT)
+gtk_update_icon_cache_DEPENDENCIES = $(GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT)
gtk_update_icon_cache_SOURCES = updateiconcache.c
endif